﻿using System.AddIn.Contract;
using System.AddIn.Pipeline;
using System.IO;

namespace DCT.AddIn.Contract
{
    [AddInContract]
    public interface IDCTExtendedFunctionContract : IContract
    {
        int VisualPosition { get; }
        INativeHandleContract GetVisual();
        void UpdateData();
        void Initialize(IHostObjectContract hostObj);
    }

    public interface IHostObjectContract : IContract
    {
        Stream GetData();
        void ReportProgress(double progressPercent);
        void ApplyChanges(Stream xmlChanges);
    }
}
